unit u_Propriedades;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uPai, JvExMask, JvToolEdit, JvDBControls, Grids, DBGrids,
  JvExDBGrids, JvDBGrid, StdCtrls, DBCtrls, Mask, DB, Menus, XPMenu,
  Buttons, ExtCtrls, MMJPanel, FMTBcd, DBClient, Provider, SqlExpr;

type
  Tf_Propriedades = class(TfPai)
    MMJPanel3: TMMJPanel;
    lbl2: TLabel;
    lbl3: TLabel;
    lbl4: TLabel;
    lbl5: TLabel;
    lbl7: TLabel;
    lbl8: TLabel;
    lbl9: TLabel;
    lbl10: TLabel;
    lbl11: TLabel;
    lbl21: TLabel;
    dbedtPRO_DESCRICAO: TDBEdit;
    dbedtPRO_ENDERECO: TDBEdit;
    dbedtPRO_COMPLEMENTO: TDBEdit;
    dbedtPRO_BAIRRO: TDBEdit;
    dbedtPRO_CEP: TDBEdit;
    dbedtPRO_UF: TDBEdit;
    dbedtPRO_METRAGEM: TDBEdit;
    dbedtPRO_QUANTIDADETOTAL: TDBEdit;
    dbmmoPRO_OBS: TDBMemo;
    JvDBGrid1: TJvDBGrid;
    JvDBDateEdit1: TJvDBDateEdit;
    s_Prop: TSQLDataSet;
    p_Prop: TDataSetProvider;
    ds_Prop: TClientDataSet;
    s_PropPRO_ID: TIntegerField;
    s_PropFOR_ID: TIntegerField;
    s_PropPRO_DATACADASTRO: TDateField;
    s_PropPRO_DESCRICAO: TStringField;
    s_PropPRO_METRAGEM: TStringField;
    s_PropPRO_ENDERECO: TStringField;
    s_PropPRO_BAIRRO: TStringField;
    s_PropPRO_CIDADE: TStringField;
    s_PropPRO_CEP: TStringField;
    s_PropPRO_UF: TStringField;
    s_PropPRO_COMPLEMENTO: TStringField;
    s_PropPRO_OBS: TStringField;
    s_PropPRO_QUANTIDADETOTAL: TFloatField;
    s_PropPRO_QUTDECONTRATADA: TFloatField;
    s_PropPRO_QUTDEENTREGUE: TFloatField;
    s_PropPRO_SALDO: TFloatField;
    ds_PropPRO_ID: TIntegerField;
    ds_PropFOR_ID: TIntegerField;
    ds_PropPRO_DATACADASTRO: TDateField;
    ds_PropPRO_DESCRICAO: TStringField;
    ds_PropPRO_METRAGEM: TStringField;
    ds_PropPRO_ENDERECO: TStringField;
    ds_PropPRO_BAIRRO: TStringField;
    ds_PropPRO_CIDADE: TStringField;
    ds_PropPRO_CEP: TStringField;
    ds_PropPRO_UF: TStringField;
    ds_PropPRO_COMPLEMENTO: TStringField;
    ds_PropPRO_OBS: TStringField;
    ds_PropPRO_QUANTIDADETOTAL: TFloatField;
    ds_PropPRO_QUTDECONTRATADA: TFloatField;
    ds_PropPRO_QUTDEENTREGUE: TFloatField;
    ds_PropPRO_SALDO: TFloatField;
    dbedtPRO_CIDADE: TDBEdit;
    lbl6: TLabel;
    dbedtPRO_CIDADE1: TDBEdit;
    lbl1: TLabel;
    s_PropPRO_IE: TStringField;
    ds_PropPRO_IE: TStringField;
    procedure FormCreate(Sender: TObject);
    procedure btnProcurarClick(Sender: TObject);
    procedure btnGravarClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  f_Propriedades: Tf_Propriedades;

implementation

uses u_Contratos, UDm, u_Variedades;

{$R *.dfm}

procedure Tf_Propriedades.FormCreate(Sender: TObject);
begin
//  inherited;

end;

procedure Tf_Propriedades.btnProcurarClick(Sender: TObject);
begin
  //  inherited;
  DM.ID_PROPRIEDADE := ds_PropPRO_ID.AsInteger;
  f_Variedades := Tf_Variedades.Create(Application);
  try
    f_Variedades.ShowModal;
  finally
    f_Variedades.Free;
  end;
end;

procedure Tf_Propriedades.btnGravarClick(Sender: TObject);
begin
  if (ds_Prop.State in [dsInsert]) then
  begin
    if dm.c_6_genid.Active then
      dm.c_6_genid.Close;
    dm.c_6_genid.CommandText := 'SELECT CAST(GEN_ID(gen_propriedade, 1) AS INTEGER) AS CODIGO FROM RDB$DATABASE';
    dm.c_6_genid.Open;
    ds_PropPRO_ID.AsInteger := dm.c_6_genid.Fields[0].AsInteger;
    ds_PropFOR_ID.AsInteger := dm.ID_FORNECEDOR;
    dm.c_6_genid.Close;
  end;
  inherited;
  if (ds_Prop.Active) then
     ds_Prop.Close;
  ds_Prop.Params[0].AsInteger := DM.ID_FORNECEDOR;
  ds_Prop.Open;

end;

procedure Tf_Propriedades.FormShow(Sender: TObject);
begin
//  inherited;
  if (ds_Prop.Active) then
     ds_Prop.Close;
  ds_Prop.Params[0].AsInteger := DM.ID_FORNECEDOR;
  ds_Prop.Open;
  if (ds_Prop.IsEmpty) then
    ds_Prop.Close;
end;

procedure Tf_Propriedades.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  if (ds_Prop.Active) then
     ds_Prop.Close;
  inherited;

end;

end.
